对象:接口
象征:
关键词: INTERFACE
接口是面向对象编程的一种手段。物体 ITF
描述了一组方法和属性原型。在这种情况下,原型意味着 方法 和 特性 只包含声明,不包含实现。
这允许以相同方式使用具有共同属性的不同功能块。一个 国际乒联 通过单击将对象添加到应用程序或项目中
有关更多信息,请参阅: 实现一个接口
遗产 | |
姓名 | 接口名称 |
先进的 |
有关更多信息,请参阅: 扩展接口 |
提示
接口支持多重继承。
您可以添加 接口属性 和 接口方法 对象 国际乒联 目的。接口方法可能只包含输入、输出和 VAR_IN_OUT 变量的声明,但没有实现。
为了让程序中也能使用接口,必须有实现这个接口的功能块。
这意味着:
功能块在其声明部分的 IMPLEMENTS 列表中包含接口
功能块包含接口的所有方法和属性原型的实现
一个功能块可以实现一个或多个接口。您可以使用具有相同参数的相同方法,但在不同的功能块中使用不同的实现代码。
您不得在接口中定义变量。接口没有实现部分,也没有动作。只定义了一组方法,您可以在其中只定义输入、输出和 VAR_IN_OUT 变量。
CODESYS 始终将使用接口类型声明的变量视为引用。
实现接口的功能块必须包含接口方法的实现代码。您已完全按照接口中的方法命名方法,并且方法包含与接口中相同的输入、输出和 VAR_IN_OUT 变量。
接口参考和在线更改
编译器版本 < 3.4.1.0 可能会发生以下情况:
如果一个功能块因为添加或删除变量,或者因为变量类型改变而改变了它的数据,那么 CODESYS 将功能块的所有实例复制到新的内存位置。然而,在这种情况下,接口引用不是指新的内存位置,而是指旧的内存位置。
如果编译器版本 >= 3.4.1.0, CODESYS 自动重新寻址接口引用,以便 CODESYS 如果在线更改,还会引用正确的接口。 CODESYS 需要额外的代码和更多的时间,因此可能会出现抖动问题,具体取决于相关对象的数量。所以, CODESYS 显示在执行在线更改之前相关的变量和接口引用的数量,然后您可以决定是否应该执行或中止在线更改。
接口的定义及其在功能块中的使用
您已插入接口 国际乒联 在应用程序下方。接口包含方法 方法1 和 方法2. 国际乒联, 方法1 和 方法2 不包含实现代码。您只在方法的声明部分插入所需的变量声明。
如果您随后在实现接口的设备树中插入功能块 国际乒联, CODESYS 自动也插入方法 方法1 和 方法2 在功能块下。在这里,您可以在方法中实现特定于功能块的代码。
